home *** CD-ROM | disk | FTP | other *** search
/ NOVA - For the NeXT Workstation / NOVA - For the NeXT Workstation.iso / Documents / NeXTAnswers / netinfo.598 < prev    next >
Text File  |  1992-02-06  |  7KB  |  178 lines

  1. {\rtf0\ansi{\fonttbl\f2\fnil Times-Roman;\f0\fmodern Courier;}
  2. \paperw11760
  3. \paperh7200
  4. \margl120
  5. \margr120
  6. {\colortbl\red0\green0\blue0;}
  7. \pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\f2\b0\i0\ul0\fs28 NetInfo timeout binding advanced debugging\
  8. \
  9. Q:  The server machine for my network NetInfo domain won't boot.  I get the message about being unable to contact the parent NetInfo server during boot.  This is on the master, even!  And, yes, I waited 20 minutes.  What's wrong?\
  10. \
  11. A:  There are two things to check here.  The simpler: boot the machine connected only to a null network (a doubly-terminated T connector).  If the machine boots now, you've a problem on your network: cables, connectors, terminators, or possibly bad ethernet hardware on one of the computers on the network.  It could also be an incorrectly configured GatorBox (or 
  12. \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\fc0 similar
  13. \pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600  sort of device), or gateway or bridge or router.\
  14. \
  15. Another test for part of this problem: in the local domain, rather than having 
  16. \b broadcasthost
  17. \b0  serve the 
  18. \b ../network
  19. \b0  domain, have some explicit host serve 
  20. \b ../network
  21. \b0 .  For example:\
  22. \
  23.  
  24. \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\f0\fs24\fi700 rhino-60% 
  25. \b niutil -read -t 127.0.0.1/local /machines/broadcasthost
  26. \b0 \
  27. name: broadcasthost\
  28. ip_address: 255.255.255.255\
  29. serves:\
  30. rhino-61% 
  31. \b niutil -read -t 127.0.0.1/local /machines/rhino
  32. \b0 \
  33. name: rhino\
  34. ip_address: 192.42.172.6\
  35. serves: ../network\
  36. \
  37.  
  38. \pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\f2\fs28 This might even be done before you take the server machine off the network and put it on a null network, as a fairly quick verification of the situation.  If you like, you could leave the 
  39. \b serves
  40. \b0  property's value of 
  41. \b ../network 
  42. \b0 on 
  43. \b broadcasthost
  44. \b0 ; removing it might be important if broadcast packet handling is very badly fouled up on your network.  (Once you fix things, we recommend you return your local domain to its default setting, or as appropriate for your installation.)\
  45. \
  46. After setting an explicit server machine for the 
  47. \b ../network
  48. \b0  domain, reboot the server.  If NetInfo still won't bind correctly, it's something else besides an incorrect processing of broadcast packets.\
  49. \
  50. The other possibility is a rather corrupted NetInfo database.  One reason would be extraneous 
  51. \b serves
  52. \b0  properties — a 
  53. \b serves
  54. \b0  property indicating a machine serves a particular NetInfo domain when it doesn't.  This is particularly troublesome with an entry like the following in what should be the root domain:\
  55. \
  56.  
  57. \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\f0\fs24\fi700 /machines/
  58. \i hostname
  59. \i0 \
  60.     name: 
  61. \i hostname
  62. \i0 \
  63.     ip_address: 
  64. \i aa.bb.cc.dd
  65. \i0 \
  66.     serves: ../network\
  67.  
  68. \pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\f2\fs28 \
  69. Note that this machine claims to serve a database in the .. domain — the parent domain of what should be the root domain.  But, root has no parent!\
  70. \
  71. How might you see this, since NetInfo won't come up?  Again, put the machine on a null network.  To the “Type c to continue” message, go ahead and type `c' and boot without the parent.  If you look for 
  72. \b netinfod
  73. \b0 s, you should see something like this:\
  74. \
  75.  
  76. \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\f0\fs24\fi700\fc0 rhino-66% 
  77. \b ps -ax | grep netinfod
  78. \b0 \
  79.    95 ?  S     0:26 /usr/etc/netinfod local\
  80.    96 ?  S     0:10 /usr/etc/netinfod network\
  81.   930 p2 S     0:00 grep netinfod\
  82.  
  83. \pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\f2\fs28 \
  84. This shows that there's a 
  85. \b netinfod
  86. \b0  for the domain tagged 
  87. \b local
  88. \b0  and the domain tagged 
  89. \b network
  90. \b0  on the local machine.  Now, examine which machines serve which domains:\
  91. \
  92.  
  93. \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\f0\fs24\fi700\fc0 rhino-67% 
  94. \b niutil -list -t 127.0.0.1/network /machines serves
  95. \b0 \
  96. 2        ./network rhino/local \
  97. 8        m20m/local \
  98. 9        tb21/local \
  99. 47       cp210/local \
  100. 118      ./network cockatoo/local \
  101. 121      \
  102. 166      ../network\
  103.  
  104. \pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\f2\fs28 \
  105. Note the use of a tagged domain and an explicit IP address.  This circumvents any sort of domain or host lookup mechanism (which might not work, or might time out).  \
  106. \
  107. From the results of the 
  108. \b niutil -list
  109. \b0 , you can see that the domain has two servers (two machines, probably 
  110. \b rhino
  111. \b0  and 
  112. \b cockatoo
  113. \b0 , serve 
  114. \b ./network
  115. \b0 ), one machine serves no domain (probably a non-NeXT computer), and one machine serves 
  116. \b ../network
  117. \b0  in what should be the root domain.  To determine which machine serves 
  118. \b ../network
  119. \b0 , type:\
  120. \
  121.  
  122. \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\f0\fs24\fi700 rhino-68% 
  123. \b niutil -read -t 127.0.0.1/network 166
  124. \b0 \
  125.  
  126. \fc0 ip_address: 192.42.172.66 \
  127. name: lab6 \
  128. en_address: 0:0:0:0:0:0 \
  129. bootfile: /mach\
  130. bootparams: root=rhino:/ private=cockatoo:/clients/lab6\
  131. serves: ../network\
  132. owner: The Lab \
  133. netgroups: labhosts \
  134. Comments: Networking lab machine\
  135.  
  136. \f2\fs28 \
  137.  
  138. \pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600 Note the use of the directory number (166) in the 
  139. \b niutil
  140. \b0  command.\
  141. \
  142. Now you can see exactly which machine is claiming to serve something it shouldn't be serving.  To correct the problem:\
  143. \
  144.  
  145. \pard\tx560\tx1120\tx1680\tx2240\tx2800\tx3360\tx3920\tx4480\tx5040\tx5600\f0\fs24\fi700 rhino-69% 
  146. \b niutil -destroyprop -t 127.0.0.1/network 166 serves
  147. \b0 \
  148.  
  149. \pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600\f2\fs28 \
  150. This removes the 
  151. \b serves
  152. \b0  property.  If you want to change the value of the property, use 
  153. \b niutil
  154. \b0  with the 
  155. \b -createprop
  156. \b0  option instead.\
  157. \
  158. (How might an invalid 
  159. \b serves
  160. \b0  property value get into the database?  Perhaps someone mistyped something, or perhaps someone inappropriately moved a directory from the local domain's 
  161. \b /machines
  162. \b0  directory into the network domain.)\
  163. \
  164. Incidentally, the first solution to the problem — bad network hardware, or bad ethernet transceiver or controller on some computer — will likely manifest itself in other ways.  For example, printing might not work; check your printer error log (usually 
  165. \b /usr/adm/lpd-errs
  166. \b0 ) for error messages.  It's also entirely possible that many other network operations, such as used by the 
  167. \b ping
  168. \b0 (8) command, will work fine: perhaps what's fouled up is correct handling of broadcast packets (which could also be caused by an incorrect software configuration).\
  169. \
  170. QA598\
  171. \
  172.  
  173. \pard\tx520\tx1060\tx1600\tx2120\tx2660\tx3200\tx3720\tx4260\tx4800\tx5320 Valid for 1.0\
  174. Valid for 2.0\
  175.  
  176. \pard\tx960\tx1920\tx2880\tx3840\tx4800\tx5760\tx6720\tx7680\tx8640\tx9600 \
  177.  
  178.